package pe.gob.sunat.georeferencia.controller;

import java.util.List;
import java.util.Map;

import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import pe.gob.sunat.georeferencia.model.domain.T0008maesDepa;
import pe.gob.sunat.georeferencia.service.MaestroDepaService;


@Controller
public class DepartamentoController {
	
	@Autowired
	private static MaestroDepaService  maestroDepaService;
	
	
//	
//	public static void main(String[] args) {
//		try {
//			List<T0008maesDepa> listaLocal = maestroDepaService.selectAllDepartamento("");
//			System.out.println("Nombre:"+listaLocal.get(0).getNOM_DEPA());
//		} catch (Exception e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		}
//	}
	
	
	@RequestMapping(value = "/listadepartamento.do", method = RequestMethod.POST)
	@ResponseBody			
	public JSONObject listadoLocal(){
		System.out.println("Entro al accion!!!!!!!!!!");
		 //JTableJSONResponse<Map<String, Object>> jstr=new JTableJSONResponse<Map<String,Object>>();
		JSONObject jsonObject=null;
		try {
			List<T0008maesDepa> listaLocal = maestroDepaService.selectAllDepartamento("");
		   //jstr = new JTableJSONResponse<Map<String, Object>>("OK",listaLocal,listaLocal.size());
			System.out.println("Nombre:"+listaLocal.get(0).getNOM_DEPA());
			
			jsonObject = new JSONObject(listaLocal);
		} catch (Exception e) {
			e.printStackTrace();
		}
			    
	    return jsonObject;
	}
	
//	@RequestMapping(value = "/listadoLocalByFilter.do", method = RequestMethod.POST)
//	@ResponseBody
//	public JTableJSONResponse<Map<String, Object>> listadoLocalByFilter(String desLocal){
//		 JTableJSONResponse<Map<String, Object>> jstr=new JTableJSONResponse<Map<String,Object>>();
//		try {
//			List<Map<String, Object>> listaLocal = canbLocalService.selectAllLocal(desLocal);
//		   jstr = new JTableJSONResponse<Map<String, Object>>("OK",listaLocal,listaLocal.size());
//	
//		} catch (Exception e) {
//			e.printStackTrace();
//		}			    
//	    return jstr;
//	}
//	
//	@RequestMapping(value = "/registrarlocal.do", method = RequestMethod.POST)
//	public @ResponseBody Map<String, ? extends Object> registrarLocal(CanbLocal local, HttpSession session) 
//	throws Exception {
//
//		Map<String, Object> data = new HashMap<String, Object>();
//		try{
//			
//		local.setDES_USUARIO_REGISTRO(session.getAttribute("desUsuarioLogin").toString());
//		if(local.getID_LOCAL()==null){
//			canbLocalService.insertLocal(local);
//		}
//		
//		data.put("Record", local);
//		data.put("Result", "OK");
//		data.put("message", "Se registro satisfacoriamente.");
//		}catch (Exception e) {
//		e.printStackTrace();	
//		//data.put("data", data);
//		data.put("Result", "ERROR");
//		data.put("message", "En estos momentos estamos en mantenimiento.");
//		}
//		return data;
//	}
//
//	
//	@RequestMapping(value = "/actualizarlocal.do", method = RequestMethod.POST)
//	public @ResponseBody Map<String, ? extends Object> actualizarLocal(CanbLocal local, HttpSession session)
//	throws Exception {
//		
//		Map<String, Object> data = new HashMap<String, Object>();
//		try{
//		local.setDES_USUARIO_REGISTRO(session.getAttribute("desUsuarioLogin").toString());
//		local = canbLocalService.updatebyIdLocal(local);
//		data.put("Record", local);
//		data.put("Result", "OK");
//		data.put("message", "Se actualizo satisfacoriamente.");
//		}catch (Exception e) {
//		e.printStackTrace();	
//		data.put("data", data);
//		data.put("success", Boolean.FALSE);
//		data.put("message", "En estos momentos estamos en mantenimiento.");
//		}
//		return data;
//	}
//	
//	
//	@RequestMapping(value = "/eliminarlocal.do", method = RequestMethod.POST)
//	public @ResponseBody Map<String, ? extends Object> eliminarLocal(Integer idLocal)
//	throws Exception {
//		
//		Map<String, Object> data = new HashMap<String, Object>();
//		try{
//		CanbLocal	local= new CanbLocal(); 
//		local.setID_LOCAL(idLocal);
//		local.setST_LOCAL(Constantes.ESTADO_INACTIVO+"");
//		local = canbLocalService.updatebyIdLocal(local);
//		data.put("Result", "OK");
//		data.put("message", "Se actualizo satisfacoriamente.");
//		}catch (Exception e) {
//		e.printStackTrace();	
//		data.put("data", data);
//		data.put("Result", "ERROR");
//		data.put("message", "En estos momentos estamos en mantenimiento.");
//		}
//		return data;
//	}
	
	

}
